package com.example.docking.dao.xky;

import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * ProductLineItem 类定义
 */
@Data
public class ProductLineItem {

    private String lineNo; // 项次号
    private String poLineNoShow; // 项次展示非多交期的1-1-1 ,2-1-1 展示为 1,2
    private String productCode; // 物料编码
    private String productName; // 产品名称
    private String productScale; // 产品规格
    private String prodSubkeyCode; // 子件特性编码
    private String prodSubkeyName; // 子件特性名称
    private Number partialDelivery; // 是否多交期 0否 1是
    private String profitCenterCode; // 收货部门编码
    private String profitCenterName; // 收货部门名称
    private String receiveAddressCode; // 收货仓库编码
    private String receiveAddressName; // 收货仓库名称
    private Number expectedDate; // 交货日期
    private Number status; // 行状态 0:正常 1:结案 2:留置 3:冻结
    private Number receiveType; // 交货方式
    private Number purchaseQty; // 采购数量
    private String purchaseUnitCode; // 采购单位编码
    private String purchaseUnitName; // 采购单位名称
    private Number valuationQty; // 采购计价数量

    // 新增字段
    private String valuationUnitCode; // 计价单位编码
    private String valuationUnitName; // 计价单位名称
    private Number isFreebie; // 是否是赠品 0 否 1 是
    private Number price; // 无税单价
    private Number taxPrice; // 含税单价
    private Number lineAmount; // 无税金额
    private Number taxLineAmount; // 含税金额
    private Number lineCostAmount; // 无税其他费用小计
    private Number taxLineCostAmount; // 含税其他费用小计
    private BigDecimal taxRate; // 税率
    private String remark; // 备注
    private String confirmDesc; // 确认说明
    private Number isVmi; // 是否VMI 0 否 1 是
    private Number receiveStatus; // 收货状态
    private Number urgentMaterialFlag; // 是否急料 0: 不是；1：是
    private String referUnitCode; // 参考单位编码
    private String referUnitName; // 参考单位名称
    private String referQty; // 参考数量
    private String extendN01; // 扩展字段1
    private String extendN02; // 扩展字段2
    private String extendN03; // 扩展字段3
    private String extendN04; // 扩展字段4

    // 新增字段
    private String extendN05; // 扩展字段5
    private String extendN06; // 扩展字段6
    private String extendN07; // 扩展字段7
    private String extendN08; // 扩展字段8
    private String extendN09; // 扩展字段9
    private String extendN10; // 扩展字段10
    private String extendN11; // 扩展字段10
    private String extendN12; // 扩展字段10
    private String extendDef; // 自定字段版本号
    private String costCenterCode; // 成本中心-编码
    private String costCenterName; // 成本中心-名称
    private String wbsId; // WBS-Id
    private String wbsCode; // WBS-编码
    private String wbsName; // WBS-名称
    private String paymentSubjectCode; // 总账科目-编码
    private String paymentSubjectName; // 总账科目-名称
    private Number baseCurrencyExclusivePrice; // 本币未税单价
    private Number baseCurrencyInclusivePrice; // 本币含税单价
    private Number baseCurrencyExclusiveAmount; // 本币未税金额
    private Number baseCurrencyInclusiveAmount; // 本币含税金额
    private Number groupCurrencyPrice; // 集团本位币价格
    private Number groupCurrencyAmount; // 集团本位币金额

    // 新增字段
    private String platformExtendN01; // 平台自定义字段01
    private String platformExtendN02; // 平台自定义字段02
    private String platformExtendN03; // 平台自定义字段03
    private String platformExtendN04; // 平台自定义字段04
    private String platformExtendN05; // 平台自定义字段05
    private String platformExtendN06; // 平台自定义字段06
    private String platformExtendN07; // 平台自定义字段07
    private String platformExtendN08; // 平台自定义字段08
    private String platformExtendN09; // 平台自定义字段09
    private String platformExtendN10; // 平台自定义字段10
    private String platformExtendN11; // 平台自定义字段11
    private String platformExtendN12; // 平台自定义字段12
    private String budgetCodeCode; // 预算代码-编码
    private String budgetCodeName; // 预算代码-名称
    private String subjectTypeCode; // 科目类型编码
    private String subjectTypeName; // 科目类型名称
    private String wbsProjectCode; // wbs项目编码
    private String wbsProjectName; // wbs项目名称
    private String purchasePriceTypeCode; // 采购价格类型编码
    private String purchasePriceTypeName; // 采购价格类型名称
    private String confirmControlCode; // 确认控制码编码
    private String confirmControlName; // 确认控制码名称

    // 新增字段
    private Number minPrice; // 最低未税价格
    private Number minTaxPrice; // 最低含税价格
    private Number minPriceDifference; // 最低未税差价
    private Number minTaxPriceDifference; // 最低含税差价
    private Number warrantyPeriod; // 保修期
    private String warrantyPeriodCode; // 保修期编码
    private String warrantyPeriodName; // 保修期名称
    private String stagesCode; // 分期付款编码
    private String stagesDesc; // 分期付款说明
    private Number unitWeight; // 单位净重
    private String unitWeightCode; // 单位净重编码
    private String unitWeightName; // 单位净重名称
    private Number isPrecheck; // 预检否标识
    private String brandName; // 品牌
    private String manufacturerProdCode; // 制造商料号
    private Number overDeliRate; // 超交率
    private List<PrcLineList> prcLineList; // 核价单明细列表
    private List<ReqLineList> reqLineList; // 请购单单身列表
    private Number afterSaleStatus; // 售后状态

    // 新增字段
    private Number afterSaleDeadlineDate; // 售后截止日期时间戳
    private LowestPriceInfo lowestPriceInfo; // 集团最低价信息

}
